草庐IT

Android MediatorLiveData 观察者

全部标签

android - 内容提供者和内容观察者示例?

我是Android开发的新手,刚接触内容提供者和内容观察者。但是我在网上找不到例子。我一直在玩和阅读有关此的内容,但陷入困境。这是我正在尝试做的事情:我创建了一个小型内容提供程序(我已确认它正在运行并在手机上的数据库中插入/删除数据)。我们将其称为A.apk。现在我想创建一个B.apk,它将收到对数据库所做的任何更新的通知。因此,如果创建了新内容,B将显示它,如果内容被删除,它将从B的View中移除。我被困住了,很想看看如何使用最佳实践正确地完成这项工作。一个例子将不胜感激! 最佳答案 这其实很简单。只需实现一个ContentObs

SQL-基于三个不同表的观察定义日期

我有三个表:table_a,table_b和table_c。每个表包含三个变量-ID,问题和日期。表中可能会或可能不会丢失日期。我需要创建一个新表格,以便所有观察都有一个日期。实现这一目标的规则:对于表_a中的所有ID/问题对,将使用表_a的日期作为日期存在的日期。否则,将使用table_b和table_c的最小日期。如果所有表中缺少日期,请放下观察结果。SELECTID,Problem,MIN(Date)asDateFROM(SELECTID,Problem,DateFROMTable_AUNIONALLSELECTID,Problem,DateFROMTable_BUNIONALLSELE

在rx.js make source.subscribe等待观察者使用异步/等待

我有一个这样的观察者。varsource=rx.Observable.fromEvent(eventAppeared.emitter,'event').filter(mAndF.isValidStreamType).map(mAndF.transformEvent).share();然后,我与许多订户共享。这些订户都参加了活动,并对它们进行了一些异步操作。所以我的订阅者就像source.subscribe(asyncfunction(x){constfunc=handler[x.eventName];if(func){awaiteventWorkflow(x,handler.handlerNa

安卓内容观察者

我有一个生成ListView的游标“c”。ContentProvider确保ListView在基础数据发生变化时得到更新。但是,我还想在每次绘制ListView时调用另一个函数来更新我的页眉/页脚View。如何使用ContentObservers实现这一点? 最佳答案 publicvoidlistenChanges(){context.getContentResolver().registerContentObserver(CONTENT_URI,true,newMyContentObserver());}publicclassMy

Android观察者没有更新 ListView 中的对象

我在我的android应用程序中使用java.util.Observable时遇到问题。在我的应用程序中,我想在后台更改数据时更新listview。因此listview中的对象在观察者中。我在观察者类的arraylist中看到了它们。在Eclipse调试中,我看到了对我的对象的引用,例如:at.stockserv.todo.Todo@1a3f2cb7有一件事我不明白:当我的观察者更新方法中的数据发生变化时@Overridepublicvoidupdate(Observableobservable,Objectdata){if(observableinstanceofDBObjectUp

android - android中第二次观察viewmodel返回null

在我的android应用程序中,我遵循具有mvvm模式的架构组件。我的应用程序进行网络调用以显示天气信息。api调用是从存储库进行的,该存储库将响应的实时数据返回到View模型,而我的主要Activity又观察到它。除了一种情况外,该应用程序工作正常,每当我断开互联网以测试失败案例时,它都会根据需要扩大错误View在错误View中我有一个重试按钮,它使方法调用再次观察View模型(这个方法也是第一次被oncreate()调用,有效)即使在打开Internet并单击监听observable的重试按钮后,数据仍然变为空。我不知道为什么,请大家帮忙存储库@Singletonpubliccla

android - 未观察到对设置 LiveData 的多次调用

我最近看到一个奇怪的问题阻碍了我的项目。设置实时数据值的多次调用不会在View中调用观察者。似乎只有最后设置的值才真正调用View中的观察者。这是评论的代码fragment。主Activity.ktclassMainActivity:AppCompatActivity(){privatelateinitvarviewModel:MainViewModeloverridefunonCreate(savedInstanceState:Bundle?){super.onCreate(savedInstanceState)setContentView(R.layout.activity_mai

如何优雅地观察 Vue.js 3 中 localStorage 的变化?

为什么要这样做?原生localStorage只能监听同源跨不同页面的变化。然而,对于单页面应用程序来说,这种方式并不实用。因此,我打算创建一个自定义钩子来监视localStorage中的变化。方法我们需要重写localStorage下的所有方法,以便无论何时使用它们都可以被观察到。这就需要一个事件机制来进行消息传递。由于Vue3删除了和emit事件接口,我们可以使用mitt或tiny-emitter等第三方库来实现此功能。不过,我打算使用自己实现的中介模式作为通信方法。解决方案使用中介者模式的实现解决方案。//mediator.tsexportinterfaceMediatorProps{uu

Android 使用文本观察器来防止输入特殊字符

这个问题在这里已经有了答案:HowdoIuseInputFiltertolimitcharactersinanEditTextinAndroid?(20个答案)关闭7年前。我想制作一个EditText框并使用TextWatcher来防止输入特殊字符。

【前端设计模式】之观察者模式

观察者模式特性观察者模式是一种行为型设计模式,它定义了一种一对多的依赖关系,当一个对象的状态发生改变时,其依赖者(观察者)会自动收到通知并更新。观察者模式的主要特性包括:主题(Subject):也称为被观察者或发布者,负责维护一组观察者对象,并在状态变化时通知观察者。观察者(Observer):也称为订阅者或监听器,负责接收主题的通知并进行相应的处理。通知机制:主题在状态变化时会主动通知所有注册的观察者对象。最佳实践及代码示例:在前端开发中,观察者模式常用于以下场景:事件处理:通过事件机制实现了观察者模式。DOM事件、自定义事件等都是基于观察者模式实现的。数据绑定:当数据发生变化时,自动更新相